📝esbuildのoption対応 (scrapbox-bundler)
やること
esbuildのoptionをscrapbox-bundlerでできるだけ使えるようにする
動機
@takker/ScrapJupyterをscrapbox-bundlerでbuildしようと思ったが、define (esbuild)に対応していないので完全にbuildする事ができなかった
折角なので他のoptionにも対応させるタスクとしてこのページを作ってみた
調査方法
esbuild-wasmにあるコードを使う
code:sh
deno run -A -r=https://scrapbox.io --no-check "https://scrapbox.io/api/code/takker/📝esbuildのoption対応_(scrapbox-bundler)/test.ts"
code:test.ts
import { build, initialize, WASM_URL } from "../esbuild-wasm/mod.ts";
await initialize({
wasmURL: WASM_URL,
worker: false,
});
const result = await build({
stdin: {
contents: "console.log('hello, world');",
sourcefile: "test.ts",
resolveDir: Deno.cwd(),
},
bundle: true,
minify: true,
splitting: true,
outdir: "out",
format: "esm",
});
console.log(result);
対応リスト
見方
/icons/done.icon対応した
/emoji/warning.icon部分的に対応した
/icons/fail.icon対応(し|でき)ない
/icons/done.iconBundle
/icons/done.iconDefinehttps://github.com/takker99/scrapbox-bundler/pull/9
/icons/fail.iconEntry points
file systemが存在しない
/icons/done.iconExternal
/icons/done.iconFormat
Inject
Loader
/icons/done.iconMinify
Outdir
指定するとpath: "/:outdir/stdin.js"などとなる
Outfile
指定するとpath: "/:outfile.js"などとなる
Platform
/emoji/warning.iconSourcemap
inlineのみ
Splitting
Target
/icons/fail.iconWatch
エラーは出ないが、ファイルを監視できないので意味がない
/icons/fail.iconWrite
どの値を指定してもwrite: false扱いとなる
/icons/fail.iconAllow overwrite
無効
Analyze
Asset names
Banner
/emoji/warning.iconCharset
UTF-8を使用しないかどうかを示すnoUtf8として提供
Chunk names
Color
効果ない?
Conditions
効果ない?
Entry names
Footer
Global name
Ignore annotations
Incremental
JSX
/icons/done.iconJSX factory
/icons/done.iconJSX fragment
Keep names
Legal comments
Log level
Log limit
Main fields
効果ない?
Metafile
/icons/fail.iconNode paths
指定しても意味ない
Out extension
効果ない?
Outbase
効果ない?
Preserve symlinks
Public path
Pure
Resolve extensions
Source Root
Sourcefile
Sources Content
/icons/fail.iconStdin
常に使用している
Tree shaking
/icons/fail.iconTsconfig
エラーは出ないが、ファイルを読み込めないので無意味
Tsconfig raw
Working directory
/から始まる文字列が使える
#2022-01-17 18:37:11
#2021-12-31 01:44:54